#!/bin/bash

# 整数的数学运算
# *let 命令和 (()) 用法类似。【都是用来对整数进行运算】
# 语法： let "表达式" 或者 let '表达式' 都等价于 ((表达式))
# *表达式中含有 Shell 特殊字符（例如 | ）时，需要用双引号""或者单引号''将表达式包围起来；
# *和 (()) 类似， let 命令也支持一次性计算多个表达式，并且以最后一个表达式的值作为整个 let 命令的执行结果；
# * let 和 (()) 相比较 (())更灵活，可以使用 $((x+y)) 来获取 x+y 的值。
# 注意1： 对于多个表达式之间的分隔符： let 命令以空格来分隔多个表达式； (()) 以逗号,来分隔多个表达式。
# 注意2： 对于 let x+y这样的写法，Shell 虽然计算了 x+y 的值但却将结果丢弃；若不想这样，可以使用 let sum=x+y将 x+y 的结果保存在变量 sum 中。

# let 和 (()) 的区别演示
a=10 b=20
echo $((a+b)) # 能够输出 a 和 b 的结果
echo let a+b  # 使用 let 则错误， echo 会把 let a+b 作为一个字符串输出。
c=2
let c+=8      # let c+=8 等同于 ((c+=8)) 并且后者效率更高 
echo $c

# let 后面跟多个表达式
d=10 e=35      # 一行可以定义多个变量
let d+=6 f=d+e # 多个表达式以空格分隔
echo $d $f